package com.dd.web.base.dao;


import com.dd.web.base.entity.data.UmsMenu;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 用户信息查询
 */
public interface UmsMenuDao {


    int deleteByPrimaryKey(Long id);

    int insert(UmsMenu record);

    UmsMenu selectByPrimaryKey(Long id);


    int update(UmsMenu record);

    int updateByPrimaryKey(UmsMenu record);

    /**
     *
     * @return
     */
    List<UmsMenu> selectUmsMenuAll();

    /**
     * 查询一页菜单列表
     * @param menu 查询条件
     * @return 一页菜单列表
     */
    List<UmsMenu> selectUmsMenuForPage(UmsMenu menu);

    /**
     * 获取用户所有可访问资源
     */
    List<UmsMenu> getResourceList(@Param("adminId") Long adminId);

    /**
     * 根据parentId查询子集菜单
     * @param parentId 父级菜单id 为空则默认查询0级菜单
     * @return
     */
    List<UmsMenu> selectUmsMenuByParentId(@Param("parentId") Long parentId);

    /**
     * 根据parentId查询子集菜单数量
     * @param parentId 父级菜单id 为空则默认查询0级菜单
     * @return
     */
    int selectUmsMenuCountByParentId(@Param("parentId") Long parentId);

}
